public class RentBookManageTest {
    /*7. 功能测试：先创建图书及读者对象并调用各项管理功能，再进行图书租阅  */
    public static void main(String args[])
    {
        System.out.println("RentBookManage 运行情况如下：");
        RentBookManage bm= new RentBookManage();
        /* 测试图书添加功能 */
        bm.addBook("978-7-04-051593-0","Java 面向对象程序设计教程","施珺  纪兆辉","高等教育出 版社",48.5,"IT-101-01");
        bm.addBook("978-7-305-13680-3","Java 语言实验与课程设计指导","施珺 等","南京大学出版社 ",28,"IT-204-01");
        bm.addBook("978-7-113-07777-1","VB 学习与考试指导","施珺 等","中国铁道出版社 ",35,"IT-301-01");
        bm.addBook("978-7-103-01234-2","数据结构","耿国华 ","清华大学出版社 ",41.2,"IT-401-01");
        bm.addBook(1,"978-7-04-051593-0","Java 面向对象程序设计教程","施珺  纪兆辉","高等教育出 版社",48.5,"IT-101-02");//将此书插在第1本书后
        bm.displayBook();
//列出新增的所有图书信息
        /* 测试图书管理的查询、修改、删除功能*/
        System.out.println("\nsearchBook(“Java 面向对象程序设计教程” )");
        bm.searchBook("Java 面向对象程序设计教程");
        System.out.println("\nsearchBook(“Java 程序设计” )");
        bm.searchBook("Java 程序设计");
        System.out.println("\neditBook(“Java 面向对象程序设计教程”,18.5)：");
        bm.editBook("Java 面向对象程序设计教程",18.5);
        System.out.println("\ndeleteBook(“VB 学习与考试指导” )：");
        bm.deleteBook("VB 学习与考试指导");
        bm.displayBook();   //列出经过修改和删除操作之后的所有图书信息
        /* 测试读者添加和充值功能 */
        System.out.println("\naddReader(黄蓉,VIP /郭靖,普通会员)、setBalance(50/100): ");
        bm.addReader("黄蓉","VIP");
        bm.addReader("郭靖","普通会员");
        bm.readerlist.get(0).setBalance(50);  //给 1号读者充值50
        bm.readerlist.get(1).setBalance(100);  //给 2 号读者充值100
        bm.displayReader();
//列出所有读者信息
        /* 测试图书租阅功能 */
        System.out.println("\n测试图书租阅功能：");
        bm.rentBook(bm.booklist.get(0),bm.readerlist.get(0),5);  //1 号读者租阅了 1#书，时间5天间100天,未成功
        bm.rentBook(bm.booklist.get(2),bm.readerlist.get(0),100);//1 号读者租阅了 3#书，时
        bm.rentBook(bm.booklist.get(3),bm.readerlist.get(1),5);//2 号读者租阅了4#书，时间5天
        bm.displayRentInfo();
        System.out.println("\n setDelayRent(0.4)，修改超期租金后重新测试1号读者租阅3#书，时间100天：");
        bm.setDelayRent(0.4); //修改超期租金
        bm.rentBook(bm.booklist.get(2),bm.readerlist.get(0),100); // 1 号读者租阅了 3#书，时间100天,未成功
        //列出所有租阅记录
        bm.displayRentInfo();
    }
}
